enum LoginType {
  authCode,

  /// 验证码注册/登录
  password
}

enum PasswordStatus { normal, fail, succeed }

enum VerificationStatus { normal, waitting }

enum RecordStatus { normal, recording, pause, finish }

enum SearchPageType {
  normal,

  /// 正常
  realTimeSearch,

  /// 实时搜索
  topicUser

  /// 话题用户
}

enum AuditPageType { audio, pic }

/// 记录session用
enum MintNftPayOrderType {
  /// 首页进来
  home,

  /// 我的主页
  myHome,

  /// 其他人主页进来
  otherHome
}

enum TrackingSessionType { enterProfile, enterOtherHome, enterPush, enterMall, chat, myWorld }

extension TrackingSessionTypeExtension on TrackingSessionType {
  String get title => [
        '进入用户中心', //当前用户的个人主页
        '进入他人主页', //他人的个人主页
        '进入推送页面', //首页
        '进入商城',
        '聊天页面',
        '我的世界',
      ][index];
}

enum BehaviorSessionType {
  recommend,
  lifesharing,
  ASMR,
  knowledgesharing,
  music,
  tales,
  subscription,
  individualCenter,
  playPage,
  orderConfirmationPage,
}

extension BehaviorSessionTypeExtension on BehaviorSessionType {
  String get title => [
        'recommend', //推荐
        'lifesharing',
        'ASMR',
        'knowledgesharing',
        'music',
        'tales',
        "subscription",
        "个人中心",
        "播放页",
        "订单确认页"
      ][index];
}

enum TrackingContentType { audio, pic }

extension TrackingContentTypeExtension on TrackingContentType {
  String get title => [
        '音频',
        '图片',
      ][index];
}

// 会话类型(评论，点赞，分享，播放，退出session，购买音频，铸造音频，定价音频，购买头像，使用头像，铸造图片，定价图片，上传头像，发布音频，发布图片，聊天消息)
enum TrackingEventType {
  /// 评论
  comment,

  /// 点赞
  like,

  /// 分享
  share,

  /// 播放
  play,

  /// 退出session
  exitSession,

  /// 购买音频
  buyAudio,

  /// 铸造音频
  castAudio,

  /// 定价音频
  pricingAudio,

  /// 购买头像
  buyProfilePhoto,

  /// 使用头像
  useProfilePhoto,

  /// 铸造图片
  castPicture,

  /// 定价图片
  pricingPicture,

  /// 上传头像
  uploadProfilePhoto,

  /// 发布音频
  publishAudio,

  /// 发布图片
  publishPicture,

  /// 聊天消息
  chatMessage,

  /// 充值
  recharge,

  /// 提现
  withdrawnCash
}

extension TrackingEventTypeExtension on TrackingEventType {
  String get title => [
        '评论',
        '点赞',
        '分享',
        '播放',
        '退出session',
        '购买音频',
        '铸造音频',
        '定价音频',
        '购买头像',
        '使用头像',
        '铸造图片',
        '定价图片',
        '上传头像',
        '发布音频',
        '发布图片',
        '聊天消息',
        '充值',
        '提现'
      ][index];
}

enum UrlPreviewType { none, onlyHyperlink, previewCardAndHyperlink }

enum IMMessageStatus {
  ///消息发送中
  MOKNIAIM_MSG_STATUS_SENDING,

  ///消息发送成功
  MOKNIAIM_MSG_STATUS_SEND_SUCC,

  ///消息发送失败
  MOKNIAIM_MSG_STATUS_SEND_FAIL,

  ///消息被删除
  MOKNIAIM_MSG_STATUS_HAS_DELETED,

  ///被撤销的消息
  MOKNIAIM_MSG_STATUS_LOCAL_REVOKED
}
